package es.indra.malaga.managedBeans;

import java.util.ArrayList;
import java.util.List;

import es.indra.malaga.filters.NavigationFilter;
import es.indra.malaga.servicios.IUsuarioService;
import es.indra.malaga.viewBeans.UsuarioView;

public class UsuarioBean extends NavigationFilter {

	private IUsuarioService usuarioService;

	private List<UsuarioView> dataModelUsuarios = new ArrayList<UsuarioView>();
	private UsuarioView usuarioSelected;
	private int currentUsuarioIndex;

	public UsuarioBean() {
		limpiarCampos();
	}

	public String guardarUsuario() {
		usuarioService.guardarUsuario(usuarioSelected);
		limpiarCampos();
		return "listarUsuarios";
	}

	public String modificarUsuario() {
		usuarioService.modificarUsuario(usuarioSelected);
		limpiarCampos();
		return "";
	}

	public String borrarUsuario() {
		usuarioService.borrarUsuario(usuarioSelected);
		limpiarCampos();
		return "";
	}

	private void limpiarCampos() {
		usuarioSelected = new UsuarioView();
		currentUsuarioIndex = 0;
	}

	public void seleccionarUsuario(UsuarioView usuario) {
		usuarioSelected = usuario;
	}

	public UsuarioView getUsuarioSelected() {
		return usuarioSelected;
	}

	public void setUsuarioSelected(UsuarioView usuarioSelected) {
		this.usuarioSelected = usuarioSelected;
	}

	public IUsuarioService getUsuarioService() {
		return usuarioService;
	}

	public List<UsuarioView> getDataModelUsuarios() {
		dataModelUsuarios = usuarioService.getUsuarios();
		return dataModelUsuarios;
	}

	public void setUsuarioService(IUsuarioService usuarioService) {
		this.usuarioService = usuarioService;
	}

	public void setDataModelUsuarios(List<UsuarioView> dataModelUsuarios) {
		this.dataModelUsuarios = dataModelUsuarios;
	}

	public int getCurrentUsuarioIndex() {
		return currentUsuarioIndex;
	}

	public void setCurrentUsuarioIndex(int currentUsuarioIndex) {
		this.currentUsuarioIndex = currentUsuarioIndex;
	}

}
